This invention generally relates to systems for ultrasound imaging of the human anatomy for the purpose of medical diagnosis. In particular, the invention relates to a method for configuring a remotely located ultrasound imaging system to add or delete features.
Conventional ultrasound scanners create two-dimensional B-mode images of tissue in which the brightness of a pixel is based on the intensity of the echo return. The basic signal processing chain in the conventional B mode is depicted in FIG. 1. An ultrasound transducer array 2 is activated to transmit an acoustic burst along a scan line. The return RF signals are detected by the transducer elements and then formed into a receive beam by the beamformer 4. The beamformer output data (I/Q or RF) for each scan line is passed through a B-mode processing chain 6 which includes demodulation, equalization filtering, envelope detection and logarithmic compression. Depending on the scan geometry, up to a few hundred vectors may be used to form a single acoustic image frame. To smooth the temporal transition from one acoustic frame to the next, some acoustic frame averaging 8 may be performed before scan conversion.
In general, the log-compressed display data is converted by the scan converter 10 into X-Y format for video display. On some systems, frame averaging may be performed on the X-Y data (indicated by dashed block 12) rather than the acoustic frames before scan conversion, and sometimes duplicate video frames may be inserted between acoustic frames in order to achieve a given video display frame rate. The scan-converted frames are passed to a video processor 14, which maps the video data to a gray-scale mapping for video display. The gray-scale image frames are then sent to a video monitor 18 for display.
System control is centered in a host computer 20, which accepts operator inputs through an operator interface 22 (e.g., a keyboard) and in turn controls the various subsystems. (In FIG. 1, only the image data transfer paths are depicted.) During B-mode imaging, a long sequence of the most recent images are stored and continuously updated automatically in a cine memory 16. Some systems are designed to save the R-xcex8 acoustic images (this data path is indicated by the dashed line in FIG. 1), while other systems store the X-Y video images. The image loop stored in cine memory 16 can be reviewed via track-ball control, and a section of the image loop can be selected for hard disk storage.
For an ultrasound imaging system which has been configured with a free-hand three-dimensional imaging capability, the selected image sequence stored in cine memory 16 is transferred to the host computer 20 for three-dimensional reconstruction. The result is written back into another portion of the cine memory, from where it is sent to the display system 18 via video processor 14.
From the standpoint of the vendor of the ultrasound imaging system, it is desirable to sell or lease systems having built-in optional features which can be activated at a location remote from a central billing station. For example, the capability of free-hand three-dimensional imaging can be an optional feature which must be purchased from the system vendor. To ensure that the system user is charged for the use of such optional features, it is known to provide means for blocking activation of optional features unless authorization is obtained from the manufacturer. Authorization can also be given to allow for use of an optional feature free of charge for a predetermined trial period. In one conventional ultrasound system, this is accomplished by delivery of an authorized feature activation disk, which is inserted into a slot in the system. The disk has validation information and feature information stored thereon. The system compares the validation information with a unique validation standard pre-stored in the system memory. If the validation data matches the unique pre-stored standard, the feature information stored on the disk is incorporated in the system configuration database. Thereafter and until the expiration date, whenever the system is initialized, optional feature or features represented by the feature information of the disk will be enabled.
However, there is a need for a method of configuring an ultrasound imaging system at a remote location without physically transferring an authorization disk or card from the central location to the remote location. In particular, there is a need for a method of system configuration which can be carried out remotely while avoiding the delays inherent in the shipment or delivery of a disk or card from a central location.
The present invention is a method and apparatus for configuring an ultrasound imaging system at a remote location by obtaining an encrypted feature key from a central location (e.g., via telephone) and then inputting that feature key into the ultrasound imaging system using an operator interface (e.g., a keyboard). To validate the feature key, the system decrypts the encrypted data and then compares the decrypted data to validation data pre-stored in the system. If the decrypted data matches the validation data, then the optional feature identified by the feature key will be enabled each time the system is booted or initialized. Optionally, an expiration date can be associated with the activated option, after which date the feature will be disabled when the system is initialized.
In accordance with the broad scope of the invention, an activated optional feature can be disabled at a remote location by the input of an encrypted key obtained from a central location. The term xe2x80x9cfeature keyxe2x80x9d shall be used hereinafter to mean any key for activating or deactivating an optional feature.
To enable an optional feature on the ultrasound system in accordance with the preferred embodiment of the invention, an authorized service representative or other user at the remote location opens a communication link with a central location. In order to obtain a feature key for enabling the feature, the user must identify the option desired and provide the machine identification number and the option expiration date to the central location. Service personnel at the central location then run a key maker application using the given data. The key maker application employs a value extractor to organize the inputted data into vectors, and an encryption engine to transform those vectors (by multiplying each vector with a non-singular matrix) into an encrypted feature key comprising a string of numeric characters. The encrypted feature key is then communicated to the user at the remote location.
To facilitate entry of the encrypted feature activation key into the system, first the user must enter a predetermined sequence of alphanumeric characters representing an enter key entry mode command. The characters can be entered, for example, by depressing keys located either on a front panel of the system or on a modular keyboard connected to the system. The enter key entry mode command places the machine in a suspended state (i.e., the feature key entry mode) in which the next data inputted into the system is processed as a feature key. The user then enters the string of numeric characters representing the encrypted feature key into the system.
The ultrasound imaging system at the remote location is programmed with an encryption engine identical to that used at the central location to generate the encrypted feature key. After reading the encrypted feature key (i.e., storing the inputted numeric characters in a buffer), the system extracts the values representing the key identifier, machine identification number, option and option expiration date. The extracted values are then organized into vectors, which vectors are input into the encryption engine. The encryption engine de-crypts the encrypted feature key by linear transformation of the inputted vectors using the matrix which results when the non-singular matrix used during the encryption process is inverted. The decrypted vectors representing the key identifier and machine identification number are then validated. If the key identifier and machine identification number are both valid, then the decrypted option and expiration date vectors are input to an option activator, which copies the option and expiration date data into the options structure within the system configuration database. If the expiration date is valid, the feature identified by the installed option data will be activated each time that the system is booted, until the expiration date.